import com.dinmax.flash.common.collection.*

class Collection {
	
private var _datos:Array;
	
	function Collection() {
		_datos=new Array();
		//trace("Collection.as | 7 | hola a todos");
	}
	
	function addItem(key:String,value:Object) {
		//trace("Collection.as | 11 | me a�aden un item de key "+key+" y value "+value);
		addCollectionItem(new CollectionItem(key,value));
	}

	function addCollectionItem(ci:CollectionItem){
		_datos.push(ci);
	}
	
	
	function getItemAt(index:Number):CollectionItem {
		return _datos[index];
	}
	
	
	function getIndexOf(key:String):Number {
		for (var i : Number = 0; i < _datos.length; i++) {
			var ci:CollectionItem=_datos[i];
			if (ci.getKey()==key) {
				return i;
			}
		}
		return undefined;		
	}	

	function getItem(key:String):CollectionItem {
		for (var i : Number = 0; i < _datos.length; i++) {
			var ci:CollectionItem=_datos[i];
			//trace("buscando a: "+key+" el key actual es: "+ci.getKey());
			if (ci.getKey()==key) {
				return ci;
			}
		}
		//trace("no encontré nada");
		return undefined;		
	}
	
	function getItems():Array {
		//trace("Collection.as | 48 | getItems() "+_datos);
		return _datos;
	}


	function removeItem(key:String):Void {
		for (var i : Number = 0; i < _datos.length; i++) {
			var ci:CollectionItem=_datos[i];
			if (ci.getKey()==key) {
				_datos.splice(i,1);
				break;
			}
		}
	}
	
	function removeAll() {
		_datos=new Array();
	}
	
	
}